<?php

declare(strict_types=1);

require_once(__DIR__ . "/../源/页面结构/初始化.php");

$名字配对英文原名关联数组内容 = "[\n";
$英文原名配对所有别名关联数组内容 = "[\n";

$词语目录文件列表 = scandir(——词语数据目录——);
foreach ($词语目录文件列表 as $文件名) {
	if (!endsWith($文件名, ".yaml")) {
		// 我们只需要看.yaml文件
		echo "跳过“" . $文件名 . "”。\n";
		continue;
	}

	// 移除.yaml的后缀
	$文件名——英文原名 = substr($文件名, 0, -5);
	$词语 = new 词语($文件名——英文原名);
	$英文原名 = $词语->的英文原名()->的名字();

	// 检查错误
	if ($英文原名 !== $英文原名) {
		echo "警告：" . $文件名 . "中的“英文原名”（“" . $英文原名 . "”）与文件名不符！\n";
	}

	foreach ($词语->的所有名称() as $名称) {
		$名字配对英文原名关联数组内容 .= '	"' . $名称->的名字() . '" => "' . $英文原名 . '",' . "\n";
	}

	$英文原名配对所有别名关联数组内容 .= '	"' . $英文原名 . '" => [';
	foreach ($词语->的所有名称() as $名称) {
		if ($名称->的名字() === $英文原名) {
			// 不用重复加一次
			continue;
		}
		$英文原名配对所有别名关联数组内容 .= '"' . $名称->的名字() . '", ';
	}
	$英文原名配对所有别名关联数组内容 .= "],\n";

	echo "加入“" . $文件名 . "”。\n";
}

$名字配对英文原名关联数组内容 .= "];\n";
$英文原名配对所有别名关联数组内容 .= "];\n";

// https://stackoverflow.com/a/36525712/2603230
$生成文件内容 = <<<EOD
<?php

/** 注意：本文件由“工具/生成词语相关关联数组.php”文件自动生成，请不要手动修改下方内容。 **/

\$名字配对英文原名关联数组 = $名字配对英文原名关联数组内容
\$英文原名配对所有别名关联数组 = $英文原名配对所有别名关联数组内容
EOD;

$生成文件路径 = ——源——生成的数据目录—— . "/词语相关关联数组.php";
echo "准备将文件内容储存至“" . $生成文件路径 . "”……\n";
file_put_contents($生成文件路径, $生成文件内容);
